Electronic systems and circuits have made a significant contribution towards the advancement of modern society and are utilized in a number of applications to achieve advantageous results. Numerous electronic technologies such as digital computers, calculators, audio devices, video equipment, and telephone systems have facilitated increased productivity and reduced costs in analyzing and communicating data, ideas and trends in most areas of business, science, education and entertainment. Systems providing these advantageous results often include processors that operate by executing software programs comprising a series of instructions. Typically the software applications are distributed to numerous entities. However, traditional attempts at efficiently managing the distribution of a wide variety of software applications to numerous entities consumes significant resources.
Software programs typically include instructions that direct the functions of a processor device in the performance of useful tasks. The utility of a software program often depends upon how advanced and recent the application is. Advanced software applications directed to performing complex functions are being developed at exponentially increasing rates. Efficient and convenient distribution of new software application versions is very important for enabling customers to experience the benefits of the latest applications.
Managing the distribution of software programs is a very complicated and tedious endeavor. There are a lot of different activities that have an impact on the distribution of a software program. Development activities play a critical role in the distribution of a software program and the distribution of a software program initially depends on development of a software image such as the binary code instructions. Development activities continue to impact distribution as development of new software programs requires careful control measures to ensure the development proceeds in a proper and orderly manner. As software programs become more complex and modular the need for sophisticated tracking and control measures of differing software versions becomes critical. Commercial activities also typically have a significant impact on software distribution. Software products are usually sold and software distribution is typically associated with commercial activities. There are wide variety of commercial activities that impact software distribution, such as marketing, selling, purchasing contracts, licensing, etc. Coordinating and managing the impacts of these activities on software distribution traditionally requires a lot of resources.
The vast amount of activities that potentially impact distribution of software commodities make management of software distribution very difficult. Prior attempts at software distribution typically lack desirable scaleability, integration and automation features. Traditional software distribution platforms typically utilize low-level, command-line and Perl-based scripts that require significant manual support such as significant daily operation workload support to handle low-level file system directories, file system permissions for the software distribution, etc. In the past, vast information from various activities that impact software distribution is not typically integrated in a structured and coordinated manner. For example, the information that impacts software distribution such as software version, software user entitlement and user personalized requirements is not integrated across different software information resources in traditional software distribution approaches making desirable distribution management features very difficult to realize.
What is required is a system and method that facilitates streamlined software distribution management including automated integration of software distribution information.